# 定义一个函数，用于检查四位数是否为 aabb 格式
# aabb 格式表示：千位和百位数字相同，十位和个位数字相同（例如：1122, 3344）
def aabb(n):
    first = n//100  # 取千位和百位的数
    second = n % 100  # 取十位和个位的数
    return first % 11 == 0 and second % 11 == 0  # 检查是否为 aabb 格式

# 定义一个函数，用于检查一个数是否为完全平方数
# 完全平方数是指某个整数的平方（例如：4=2², 9=3²）


def pingfang(n):
    # 计算 n 的平方根并转换为整数
    # n**0.5 表示计算 n 的平方根
    # int() 函数将结果转换为整数（自动向下取整）
    m = int(n**0.5)
    # 检查 m 的平方是否等于 n
    return m*m == n


# 定义主函数，用于找出所有满足条件的四位数

def main():
    # 遍历所有四位数（从 1000 到 9999）
    for i in range(1000, 10000):
        # 检查当前数是否同时满足两个条件：
        # 1. 是 aabb 格式的数
        # 2. 是完全平方数
        if aabb(i) and pingfang(i):
            # 如果同时满足条件，就打印这个数
            print(i)


# 调用主函数开始执行程序

if __name__ == '__main__':
    main()
